﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DTO.Projectos;

namespace SGPFWebApp.Controlos
{
    public partial class ModificaProjecto : System.Web.UI.UserControl
    {
        public bool Edicao { get; set; }
        public Projecto Projecto { get; set; }

        public string NomeTecnico { get { return tecnico.Value; } }
        public string NomePromotor { get { return nomePromotor.Value; } }
        public string NacionalidadePromotor { get { return nacionalidadePromotor.Value; } }
        public string NomeRepresentante { get { return nomeRepresentante.Value; } }
        public string EmailRepresentante { get { return emailRepresentante.Value; } }
        public string TelefoneRepresentante { get { return telefoneRepresentante.Value; } }
        public string Nib { get { return nib.Value; } }
        public string Descricao { get { return descricao.Value; } }
        public bool IsIncentivos { get { return projIncentivos.Checked; } }
        public string Montante { get { return IsIncentivos ? montante.Value : "0"; } }
        public string Taxa { get { return !IsIncentivos ? taxa.Value : "0"; } }

        protected void Page_Load(object sender, EventArgs e)
        {
            
        }

        protected override void OnPreRender(EventArgs e)
        {
            if (Edicao)
            {
                if (Projecto == null)
                {
                    throw new Exception("Projecto não existe.");
                }
                fieldSetTecnico.Visible = false;
                nomePromotor.Value = Projecto.Promotor.Nome;
                nacionalidadePromotor.Value = Projecto.Promotor.Nacionalidade;
                nomeRepresentante.Value = Projecto.ResponsavelContacto.Nome;
                emailRepresentante.Value = Projecto.ResponsavelContacto.Email;
                telefoneRepresentante.Value = Projecto.ResponsavelContacto.Telefone;
                nib.Value = Projecto.NIB;
                descricao.Value = Projecto.Desc;
                if (Projecto.GetType() == typeof(Incentivos))
                {
                    projIncentivos.Checked = true;
                    projBonificacao.Checked = false;
                    montante.Value = ((Incentivos)Projecto).MontantePretendido.ToString();
                    taxa.Value = "0";
                }
                else
                {
                    projIncentivos.Checked = false;
                    projBonificacao.Checked = true;
                    montante.Value = "0";
                    taxa.Value = ((Bonificacoes)Projecto).TaxaPedida.ToString();
                }
            }
        }
    }
}